export interface FileTransfer {
  id: string;
  fileName: string;
  fileSize: number;
  progress: number;
  status: 'pending' | 'transferring' | 'completed' | 'failed';
  type: 'send' | 'receive';
  transferType: 'cloud' | 'direct';
  password?: string;
  targetDevices?: DeviceInfo[];
}

export interface DeviceInfo {
  id: string;
  name: string;
  type: 'desktop' | 'mobile' | 'tablet';
  connectionType: 'qr' | 'code' | 'lan' | 'bluetooth' | 'usb';
  status: 'available' | 'connected' | 'offline';
  lastSeen?: string;
  platform?: 'windows' | 'macos' | 'linux' | 'android' | 'ios';
}

export type ConnectionMethod = 'qr' | 'code' | 'lan' | 'bluetooth' | 'usb';

export interface CloudStorage {
  id: string;
  fileName: string;
  fileSize: number;
  uploadTime: string;
  expiryTime: string;
  password?: string;
  downloadCount: number;
} 